package com.bci.pwtz.service;

import com.bci.pwtz.common.util.PaginationList;
import com.bci.pwtz.exception.CanNotDeleteException;
import com.bci.pwtz.exception.PwtzDatabaseException;
import com.bci.pwtz.mysql.model.Dyzsblq;

public interface DyzsblqService {
	/**
	 * 查询低压柱上避雷器
	 * @param dyzsblqId
	 * @return
	 * @throws PwtzDatabaseException
	 */
	Dyzsblq load(String DyzsblqId) throws PwtzDatabaseException;
	/**
	 * 添加低压柱上避雷器
	 * @param dyzsblq
	 * @return
	 * @throws PwtzDatabaseException
	 */
	Dyzsblq add(Dyzsblq dyzsblq) throws PwtzDatabaseException;
	/**
	 * 删除低压柱上避雷器
	 * @param deviceid
	 * @return
	 * @throws PwtzDatabaseException
	 */
	int delete(String deviceid) throws PwtzDatabaseException,CanNotDeleteException;
	/**
	 * 修改低压柱上避雷器
	 * @param dyzsblq
	 * @return
	 * @throws PwtzDatabaseException
	 */
	int update(Dyzsblq dyzsblq) throws PwtzDatabaseException;
	/**
	 * 分页查询一段时间内修改的低压柱上避雷器
	 * @param beginTime
	 * @param endTime
	 * @param pageSize
	 * @param pageNo
	 * @return
	 * @throws PwtzDatabaseException
	 */
	PaginationList<Dyzsblq> selectDyzsblqs(String devicename,Long companyId,int portalType,String[] medLineCodes,String towerCode,String beginTime,String endTime,int pageSize,int pageNo)throws PwtzDatabaseException;

	PaginationList<Dyzsblq> selectDyzsblqByDytg(String towerCode,String deviceName,Long companyId,int pageSize, int pageNo) throws PwtzDatabaseException;
}
